package org.ch03.hw.demo02;

/**
 * 主人可以带 "任意" 动物去逛街
 *
 * @author ZJL
 * @date 2025-03-25
 */
public class People<T> {
    /**
     * 宠物
     */
    private T pet;

    public T getPet() {
        return pet;
    }

    public void setPet(T pet) {
        this.pet = pet;
    }

    /**
     * 逛街
     */
    public void shopping() {
        System.out.println("逛街...");
        // 注意：在编译中无法确定 T 是谁，因此无法调用 call 方法
        // 解决一：强转
        if (pet instanceof Pet ) {
            if (pet instanceof ICall ic){
               ic.call();
            }
        }
    }
}
